OpenBox rc.xml
Внешний вид
Очень, очень корявый перевод комментариев стандартного rc.xml файла OpenBox.
<?xml version="1.0" encoding="UTF-8"?> <!-- Не изменяйте этот файл, он будет перезаписан во время установки. Скопируйте файл в $HOME/.config/openbox/. --> <openbox_config xmlns="http://openbox.org/3.4/rc" xmlns:xi="http://www.w3.org/2001/XInclude"> <resistance> <strength>10</strength> <screen_edge_strength>20</screen_edge_strength> </resistance> <!-- насколько я могу судить, это значение сопротивления - -> <focus> <focusNew>yes</focusNew> <!-- //фокус на новом// всегда стараться сфокусироваться на новых окнах, при их появлении. Другие правила не применять [игнорировать всё остальные] --> <followMouse>no</followMouse> <!-- //следовать за мышью// перемещать фокус на окна, вслед за перемещением мыши [фокус будет находится на том окне, на которое указывает курсор мыши] --> <focusLast>yes</focusLast> <!-- //фокус на последнем// фокусироваться на последнем используемом окне при смене рабочих столов, вместо того, что находится под мышью. Этот параметр работает, при включённом параметре <followMouse> [при переходе с одного рабочего стола на другой, фокусировка будет не на окне под указателем, а на последнем используемом, на этом рабочем столе, окне.] --> <underMouse>no</underMouse> <!-- //под мышью// переместить фокус под мышь, даже если мышь не двигается --> <focusDelay>200</focusDelay> <!-- //задержка фокусировки// при включенном параметре followMouse мышь должна быть внутри окна в течении стольких мили секунд(1000 = 1 sec), прежде чем фокус будет передан на это окно --> <raiseOnFocus>no</raiseOnFocus> <!-- //фокусировка на поднятом окне// при включённом параметре followMouse, и фокус передаётся окну — перемещением мыши в него, а также поднятием (повышением, raise) окна --> </focus> <placement> <policy>Smart</policy> <!-- 'Smart' or 'UnderMouse' //политика// 'Тут ясно, либо «интерактивная», либо «ПодМышью»'--> <center>yes</center> <!-- //центрирование// поместить в окно в центр свободного (найденного) пространства, либо в левом верхнем углу --> <monitor>Active</monitor> <!-- //монитор// При «интерактивной» политике, с несколькими мониторами, стараться размещать новые окна на: 'Any' — любом мониторе, 'Mouse' — на том, где находиться мышь, 'Active' — на том, где активное окно --> <primaryMonitor>1</primaryMonitor> <!-- //основной монитор// Монитор, на котором Openbox должен размещать всплывающие диалоги, такие как focus cycling popup, или сообщение о переключении рабочих столов Это может быть индекс (число), с указанием конкретного монитора. Или одно из следующих значений: 'Mouse' — там, где находится мышь, или 'Active' — там, где находиться активное окно --> </placement> <theme> <name>Clearlooks</name> <titleLayout>NLIMC</titleLayout> <!-- символы NDSLIMC, могут встречаться сколько угодно раз и в любой последовательности. N: иконка окна L: название окна (AKA title). I: свернуть M: максимализировать C: закрыть S: скрыть (свернуть/развернуть, roll up/down) D: вездесущ (на всех рабочих столах). --> <keepBorder>yes</keepBorder> <animateIconify>yes</animateIconify> <font place="ActiveWindow"> <!-- параметры шрифтов для активного окна --> <name>sans</name> <size>8</size> <!-- размер шрифта в пунктах --> <weight>bold</weight> <!-- 'bold' or 'normal' /\ «жирный» или «нормальный» --> <slant>normal</slant> <!-- 'italic' or 'normal' /\ «курсив» или «нормальный» --> </font> <font place="InactiveWindow"> <!-- параметры шрифтов для не активного окна --> <name>sans</name> <size>8</size> <!-- размер шрифта в пунктах --> <weight>bold</weight> <!-- 'bold' or 'normal' /\ «жирный» или «нормальный» --> <slant>normal</slant> <!-- 'italic' or 'normal' /\ «курсив» или «нормальный» --> </font> <font place="MenuHeader"> <!-- параметры шрифтов для заголовков меню --> <name>sans</name> <size>9</size> <!-- размер шрифтов в пунктах --> <weight>normal</weight> <!-- 'bold' or 'normal' /\ «жирный» или «нормальный» --> <slant>normal</slant> <!-- 'italic' or 'normal' /\ «курсив» или «нормальный» --> </font> <font place="MenuItem"> <!-- параметры шрифтов для содержимого меню --> <name>sans</name> <size>9</size> <!-- размер шрифтов в пунктах --> <weight>normal</weight> <!-- 'bold' or 'normal' /\ «жирный» или «нормальный» --> <slant>normal</slant> <!-- 'italic' or 'normal' /\ «курсив» или «нормальный» --> </font> <font place="OnScreenDisplay"> <!-- параметры шрифтов для содержимого меню --> <name>sans</name> <size>9</size> <!-- размер шрифтов в пунктах --> <weight>bold</weight> <!-- 'bold' or 'normal' /\ «жирный» или «нормальный» --> <slant>normal</slant> <!-- 'italic' or 'normal' /\ «курсив» или «нормальный» --> </font> </theme> <desktops> <!-- этот параметр используется при запуске, и позволяется менять их во время сессии это значения, по умолчанию, не изменённые каким-либо приложением, либо сохранённой сессией. Используйте obconf, если Вы хотите изменить эти значения, без выхода (или без сохранности) --> <number>4</number> <firstdesk>1</firstdesk> <names> <!-- если хотите укажите здесь имена для рабочих столов, например: <name>desktop 1</name> <name>desktop 2</name> --> </names> <popupTime>875</popupTime> <!-- Время задержки всплывающего окна, при переключении рабочих столов, в миллисекундах. Установите значение 0, для отключения окна --> </desktops> <resize> <drawContents>yes</drawContents> <popupShow>Nonpixel</popupShow> <!-- 'Always', 'Never', or 'Nonpixel' (xterms and such) → <!-- Ясно дело — каогда показывать всплывающие окна: всегда, никогда или 'Nonpixel' (xterms и тому подобное) --> <popupPosition>Center</popupPosition> <!-- 'Center', 'Top', or 'Fixed' → <!-- Ясно дело — в какой области рабочего стола выводить всплывающие окна: центрирование, поверх или неподвижно --> <popupFixedPosition> <!-- these are used if popupPosition is set to 'Fixed' --> <!-- эти параметры используются, лишь если popupPosition установлено в 'Fixed' --> <x>10</x> <!-- positive number for distance from left edge, negative number for distance from right edge, or 'Center' → <!-- положительное число означает расстояние от левого края, отрицательное число означает расстояние от правого края, либо значение 'Center' --> <y>10</y> <!-- позитивное число означает расстояние от верхнего края, отрицательное число означает расстояние от нижнего края, либо значение 'Center' --> </popupFixedPosition> </resize> <!-- Вы можете зарезервировать часть Вашего монитора (для всех рабочих столов), которую не пудут покрывать окна в режиме «максимилизировать», или при запуске [т. е. вновь открытое окно не будет перекрывать эту область]. Множество программ автоматически определяют пространство, но Вы можете использовать и этот способ. --> <margins> <top>0</top> <!-- сверху --> <bottom>0</bottom> <!-- снизу --> <left>0</left> <!-- слева --> <right>0</right> <!-- справо --> </margins> <dock> <position>TopLeft</position> <!-- (Top|Bottom)(Left|Right|)|Top|Bottom|Left|Right|Floating → <!-- (Сверху|Снизу)(Слева|Справа|)|Сверху|Снизу|Слева|Справа|Плавучий --> <floatingX>0</floatingX> <floatingY>0</floatingY> <noStrut>no</noStrut> <stacking>Above</stacking> <!-- 'Above', 'Normal', or 'Below' → <!-- «Спереди», «Нормально» или «Сзади» → <direction>Vertical</direction> <!-- 'Vertical' or 'Horizontal' --> <!-- 'Вертикально' or 'Горизонтально' --> <autoHide>no</autoHide> <hideDelay>300</hideDelay> <!-- в миллисекундах (1000 = 1 second) --> <showDelay>300</showDelay> <!-- в миллисекундах (1000 = 1 second) --> <moveButton>Middle</moveButton> <!-- 'Left', 'Middle', 'Right' --> <!-- 'Слева', 'Посередине', 'Справо' --> </dock> <keyboard> <chainQuitKey>C-g</chainQuitKey> <!-- Keybindings for desktop switching → <! - Сочетания клавиш для переключения рабочем столе -> <keybind key="C-A-Left"> <action name="DesktopLeft"><dialog>no</dialog><wrap>no</wrap></action> </keybind> <keybind key="C-A-Right"> <action name="DesktopRight"><dialog>no</dialog><wrap>no</wrap></action> </keybind> <keybind key="C-A-Up"> <action name="DesktopUp"><dialog>no</dialog><wrap>no</wrap></action> </keybind> <keybind key="C-A-Down"> <action name="DesktopDown"><dialog>no</dialog><wrap>no</wrap></action> </keybind> <keybind key="S-A-Left"> <action name="SendToDesktopLeft"><dialog>no</dialog><wrap>no</wrap></action> </keybind> <keybind key="S-A-Right"> <action name="SendToDesktopRight"><dialog>no</dialog><wrap>no</wrap></action> </keybind> <keybind key="S-A-Up"> <action name="SendToDesktopUp"><dialog>no</dialog><wrap>no</wrap></action> </keybind> <keybind key="S-A-Down"> <action name="SendToDesktopDown"><dialog>no</dialog><wrap>no</wrap></action> </keybind> <keybind key="W-F1"> <action name="Desktop"><desktop>1</desktop></action> </keybind> <keybind key="W-F2"> <action name="Desktop"><desktop>2</desktop></action> </keybind> <keybind key="W-F3"> <action name="Desktop"><desktop>3</desktop></action> </keybind> <keybind key="W-F4"> <action name="Desktop"><desktop>4</desktop></action> </keybind> <keybind key="W-d"> <action name="ToggleShowDesktop"/> </keybind> <!-- Keybindings for window switching --> <! - Сочетания клавиш для переключения окон -> <keybind key="A-Tab"> <action name="NextWindow"/> </keybind> <keybind key="A-S-Tab"> <action name="PreviousWindow"/> </keybind> <keybind key="C-A-Tab"> <action name="NextWindow"> <panels>yes</panels><desktop>yes</desktop> </action> </keybind> <!-- Keybindings for running applications --> <! - Сочетания клавиш для запуска приложений -> <keybind key="W-e"> <action name="Execute"> <startupnotify> <enabled>true</enabled> <name>Konqueror</name> </startupnotify> <command>kfmclient openProfile filemanagement</command> </action> </keybind> </keyboard> <mouse> <dragThreshold>8</dragThreshold> <!-- число пикселей, которое должна «пройти» мышь, прежде чем начнётся перемещение (окна) --> <doubleClickTime>200</doubleClickTime> <!-- в миллисекундах (1000 = 1 second) --> <screenEdgeWarpTime>400</screenEdgeWarpTime> <!-- Время паузы до смены рабочего стола, когда указатель касается края экрана, при перемещении окна, в миллисекундах (1000 = 1 second). Установите значение на 0 отключения warping [т. е. окна не льзя будет перетаскивать по рабочим столам] --> <context name="Frame"> <mousebind button="A-Left" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> <mousebind button="A-Left" action="Click"> <action name="Unshade"/> </mousebind> <mousebind button="A-Left" action="Drag"> <action name="Move"/> </mousebind> <mousebind button="A-Right" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="Unshade"/> </mousebind> <mousebind button="A-Right" action="Drag"> <action name="Resize"/> </mousebind> <mousebind button="A-Middle" action="Press"> <action name="Lower"/> <action name="FocusToBottom"/> <action name="Unfocus"/> </mousebind> <mousebind button="A-Up" action="Click"> <action name="DesktopPrevious"/> </mousebind> <mousebind button="A-Down" action="Click"> <action name="DesktopNext"/> </mousebind> <mousebind button="C-A-Up" action="Click"> <action name="DesktopPrevious"/> </mousebind> <mousebind button="C-A-Down" action="Click"> <action name="DesktopNext"/> </mousebind> <mousebind button="A-S-Up" action="Click"> <action name="SendToDesktopPrevious"/> </mousebind> <mousebind button="A-S-Down" action="Click"> <action name="SendToDesktopNext"/> </mousebind> </context> <context name="Titlebar"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> <mousebind button="Left" action="Drag"> <action name="Move"/> </mousebind> <mousebind button="Left" action="DoubleClick"> <action name="ToggleMaximizeFull"/> </mousebind> <mousebind button="Middle" action="Press"> <action name="Lower"/> <action name="FocusToBottom"/> <action name="Unfocus"/> </mousebind> <mousebind button="Up" action="Click"> <action name="Shade"/> <action name="FocusToBottom"/> <action name="Unfocus"/> <action name="Lower"/> </mousebind> <mousebind button="Down" action="Click"> <action name="Unshade"/> <action name="Raise"/> </mousebind> <mousebind button="Right" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="ShowMenu"><menu>client-menu</menu></action> </mousebind> </context> <context name="BLCorner"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> <mousebind button="Left" action="Drag"> <action name="Resize"/> </mousebind> </context> <context name="BRCorner"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> <mousebind button="Left" action="Drag"> <action name="Resize"/> </mousebind> </context> <context name="TLCorner"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="Unshade"/> </mousebind> <mousebind button="Left" action="Drag"> <action name="Resize"/> </mousebind> </context> <context name="TRCorner"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="Unshade"/> </mousebind> <mousebind button="Left" action="Drag"> <action name="Resize"/> </mousebind> </context> <context name="Client"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> <mousebind button="Middle" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> <mousebind button="Right" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> </context> <context name="Icon"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="Unshade"/> <action name="ShowMenu"><menu>client-menu</menu></action> </mousebind> <mousebind button="Right" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="ShowMenu"><menu>client-menu</menu></action> </mousebind> </context> <context name="AllDesktops"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="Unshade"/> </mousebind> <mousebind button="Left" action="Click"> <action name="ToggleOmnipresent"/> </mousebind> </context> <context name="Shade"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> <mousebind button="Left" action="Click"> <action name="ToggleShade"/> </mousebind> </context> <context name="Iconify"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> <mousebind button="Left" action="Click"> <action name="Iconify"/> </mousebind> </context> <context name="Maximize"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="Unshade"/> </mousebind> <mousebind button="Middle" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="Unshade"/> </mousebind> <mousebind button="Right" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="Unshade"/> </mousebind> <mousebind button="Left" action="Click"> <action name="ToggleMaximizeFull"/> </mousebind> <mousebind button="Middle" action="Click"> <action name="ToggleMaximizeVert"/> </mousebind> <mousebind button="Right" action="Click"> <action name="ToggleMaximizeHorz"/> </mousebind> </context> <context name="Close"> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> <action name="Unshade"/> </mousebind> <mousebind button="Left" action="Click"> <action name="Close"/> </mousebind> </context> <context name="Desktop"> <mousebind button="Up" action="Click"> <action name="DesktopPrevious"/> </mousebind> <mousebind button="Down" action="Click"> <action name="DesktopNext"/> </mousebind> <mousebind button="A-Up" action="Click"> <action name="DesktopPrevious"/> </mousebind> <mousebind button="A-Down" action="Click"> <action name="DesktopNext"/> </mousebind> <mousebind button="C-A-Up" action="Click"> <action name="DesktopPrevious"/> </mousebind> <mousebind button="C-A-Down" action="Click"> <action name="DesktopNext"/> </mousebind> <mousebind button="Left" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> <mousebind button="Right" action="Press"> <action name="Focus"/> <action name="Raise"/> </mousebind> </context> <context name="Root"> <!-- Menus --> <mousebind button="Middle" action="Press"> <action name="ShowMenu"><menu>client-list-combined-menu</menu></action> </mousebind> <mousebind button="Right" action="Press"> <action name="ShowMenu"><menu>root-menu</menu></action> </mousebind> </context> <context name="MoveResize"> <mousebind button="Up" action="Click"> <action name="DesktopPrevious"/> </mousebind> <mousebind button="Down" action="Click"> <action name="DesktopNext"/> </mousebind> <mousebind button="A-Up" action="Click"> <action name="DesktopPrevious"/> </mousebind> <mousebind button="A-Down" action="Click"> <action name="DesktopNext"/> </mousebind> </context> </mouse> <menu> <!-- Вы можете здесь указать более одного файла меню, и все они будут загружены, только не создавайте меню ids clash or, well, это будет бессмысленно (будет некорректно отображаться) --> <!-- по умолчанию, меню файлы (или любые другие пользовательские файлы OpenBox хранятся в $HOME/.config/openbox/) --> <file>menu.xml</file> <hideDelay>200</hideDelay> <!-- если press-release длится дольше этих настроек (в миллисекундах), меню вновь скроется --> <middle>no</middle> <!-- централизовать подменю вертикально, относительно родительского меню center submenus vertically about the parent entry --> <submenuShowDelay>100</submenuShowDelay> <!-- это просто, время задержки перед показом подменю, после выбора его из родительского меню --> <applicationIcons>yes</applicationIcons> <!-- controls, если иконки появятся в client-list-combined-menu --> <manageDesktops>yes</manageDesktops> <!-- показывать раздел управления рабочими столами в client-list-combined-menu --> </menu> <applications> <!-- # это пример с комментариями, Вы можете использовать его как # собственное правило, но разумеется без комментариев. <application name="the window's _OB_NAME property (see obprop)" class="the window's _OB_CLASS property (see obprop)" role="the window's _OB_ROLE property (see obprop)" type="the window's _NET_WM_WINDOW_TYPE (see obprob).. (if unspecified, then it is 'dialog' for child windows)"> # можно указать имя или класс, либо и то и другое. Это используется для установки # свойств окнам, при их появлении. Role устанавливается по желанию, для соотношения с # определёнными параметрами. # name, class, и role, используются для простой подстановки соответствующих значений, также, # как например, в командной строке, используют символ «*», для подстановки любых символов и # символ «?», для подстановки любого единственного символа. # type соответствует одному из: normal, dialog, splash, utility, menu, toolbar, dock, # or desktop # тут ясно, нормальный, диалог, заставка, утилита, меню, панель инструментов. # если несколько правил соответствуют окну, они будут показаны в списке свойств, # they will all be applied, in the order that they appear in this list # каждый элемент можно «опустить» или присвоить значение 'default' # для запрета на изменение этого элемента в окне <decor>yes</decor> # включить или отключить декорации окна <shade>no</shade> # сделать окно затенённым (скрутить), при его появлении. <position force="no"> # position (позиция) используется лишь когда обе координаты x и y указаны # (при этом не 'default') # когда указано "yes", то окно будет помещено здесь (в этих координатах), даже если # Вы захотите поместить его в другое место. Он переопределит buggy # тех приложений, что откажутся так себя «ввести». <x>center</x> # например число 50, или 'center' для центрирования на экране. Используйте отрицательные # числа для отсчёта с правой стороны (для отсчёта снизу <y>), т.е. -50 это 50 pixels с правой # стороны (или снизу). <y>200</y> <monitor>1</monitor> # выбрать монитор в xinerama setup. # 1 начальный (основной), или 'mouse' — там где мышь </position> <focus>yes</focus> # должна ли производится фокусировка на новом (появившимся) окне. Если указано # да, то это не означает что окну передаться фокус # могут быть ограничения, но Openbox постарается <desktop>1</desktop> # 1 это первый рабочий стол, 'all' все рабочие столы <layer>normal</layer> # 'above', 'normal', or 'below' # поверх, нормально, снизу <iconic>no</iconic> # сворачивать окна при их появлении, или нет <skip_pager>no</skip_pager> # asks to not be shown in pagers <skip_taskbar>no</skip_taskbar> # asks не будет показан в taskbars. window cycling actions также # пропустит прошлые такие окна <fullscreen>yes</fullscreen> # запустить окно в полно экранном режиме, при его появлении <maximized>true</maximized> # 'Horizontal', 'Vertical' or boolean (yes/no) </application> # конец примера --> </applications> </openbox_config>
http://ru.wikibooks.org/wiki/OpenBox_Bindings
http://ru.wikibooks.org/wiki/OpenBox_Action